﻿using System;
using System.Collections.Generic;
using System.Text;

namespace DbSetupHelper.Plugin.ScriptPackage
{
    /// <summary>
    /// Provides a way for DbSetupHelper to get metadata from lazy loaded dll's
    /// </summary>
    public interface IScriptPackageMetadata
    {
        /// <summary>
        /// Package name to be displayed to the user.
        /// </summary>
        /// <value>The name of the package.</value>
        string PackageFriendlyName
        { get; }

        /// <summary>
        /// Gets a value indicating whether [initial database creation].
        /// </summary>
        /// <value>
        /// 	<c>true</c> if [initial database creation]; otherwise, <c>false</c>.
        /// </value>
        /// <remarks>
        /// The DBSetupHelper checks this when running in an unattended mode to see which script
        /// package should be run.
        /// </remarks>
        bool InitialDatabaseCreation
        { get; }

        /// <summary>
        /// Gets the script package version.
        /// </summary>
        /// <value>The script package version.</value>
        /// <remarks>
        /// The DBSetupHelper checks this when running unattended and uses the greatest number.
        /// </remarks>
        int ScriptPackageVersion
        { get; }
    }
}
